package com.mvp.shq.washer.ui.userCenter;

import com.mvp.shq.washer.base.BaseModel;
import com.mvp.shq.washer.base.BasePresenter;
import com.mvp.shq.washer.base.BaseView;
import com.mvp.shq.washer.entity.BaseResult;

import java.util.Date;

import io.reactivex.Observable;
import okhttp3.RequestBody;

/**
 * Created by Administrator on 2017/8/24.
 */

public interface UserCenterConstract {
    interface Model extends BaseModel{
        Observable<BaseResult<String>> updateBirthday(String token, String userId, String birthday);
        Observable<BaseResult<String>> updateGender(String token,String userId,String gender);
        Observable<BaseResult<String>> updateNickname(String token,String userId,String nickname);
        Observable<BaseResult<String>> updateFace(String token, String userId, RequestBody head);

    }
    interface View extends BaseView{
        void uBirthDayS();
        void uBirthdayF(String msg);
        void uGenderS();
        void uGenderF(String msg);
        void uNicknameS();
        void uNickNameF(String msg);
        void uFaceS(String faceUrl);
        void uFaceF(String msg);
    }
    public abstract class Presenter extends BasePresenter<Model,View>{
        abstract void updateBirthday(Date birthday);
        abstract void updateGender(String gender);
        abstract void updateNickname(String nickname);
        abstract void updateFace(RequestBody face);
    }
}
